An Improved Algorithm for Finding the Strongly Connected Components of a Directed Graph
نویسنده
چکیده
For a directed graph D = (V,E), a Strongly Connected Component (SCC) is a maximal induced subgraph S = (VS , ES) where, for every x, y ∈ VS , there is a path from x to y (and vice-versa). Tarjan presented a now well-established algorithm for computing the strongly connected components of a digraph in time Θ(v+e) [8]. In the worst case, this needs v(2 + 5w) bits of storage, where w is the machine’s word size. Nuutila and Soisalon-Soininen reduced this to v(1 + 4w) [6]. In this paper, we present for the first time an algorithm requiring only 3vw bits in the worst case. Tarjan’s algorithm has found numerous uses in the literature, often as a subcomponent of larger algorithms, such as those for transitive closure [5], compiler optimisation [3] and program analysis [1, 7] to name but a few. Of particular relevance is its use in model checking, where the algorithm’s storage requirements are a critical factor limiting the number of states which can be explored [4].
منابع مشابه
On Finding the Strongly Connected Components in a Directed Graph
We present two improved versions of Tarjan's algorithm for the detection of strongly connected components in a directed graph. Our new algorithms handle sparse graphs and graphs with many trivial components (containing only one node) more economically than Tarjan's original algorithm. As an application we present an eecient transitive closure algorithm.
متن کاملDeprh-first Search .ani) Lmear Gram Algorithms (working Paper)
The value of depth-first search or "backtracking" as a technique for solving graph problems is illustrated by two examples. An algorithm for finding the biconnected components of an undirected graph and an improved version of an algorithm for finding the strongly connected components of a directed graph are presented. The space and time requirements of both algorithIns are bounded by kl V+ k2E+...
متن کاملDepth-First Search and Linear Graph Algorithms
The value of depth-first search or "bacltracking" as a technique for solving problems is illustrated by two examples. An improved version of an algorithm for finding the strongly connected components of a directed graph and ar algorithm for finding the biconnected components of an undirect graph are presented. The space and time requirements of both algorithms are bounded by k1V + k2E dk for so...
متن کاملAutomatic Service Composition Based on Graph Coloring
Web services as independent software components are published on the Internet by service providers and services are then called by users’ request. However, in many cases, no service alone can be found in the service repository that could satisfy the applicant satisfaction. Service composition provides new components by using an interactive model to accelerate the programs. Prior to service comp...
متن کاملAutomatic Service Composition Based on Graph Coloring
Web services as independent software components are published on the Internet by service providers and services are then called by users’ request. However, in many cases, no service alone can be found in the service repository that could satisfy the applicant satisfaction. Service composition provides new components by using an interactive model to accelerate the programs. Prior to service comp...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005